Controller for motor

ABSTRACT

A controller for a motor cleans, as necessary, a hydraulic chamber that generates hydraulic oil for changing a phase difference between two rotors so as to restrain sludge from building up in the hydraulic chamber. A motor has a first rotor and a second rotor that can be relatively rotated with respect to the first rotor. The controller includes a phase difference changing driver that changes the phase difference between the two rotors by controlling the pressure in the hydraulic chamber filled with hydraulic oil. The controller further includes a cleaning need determiner that determines the need for cleaning the hydraulic chamber, and a cleaning phase difference controller that controls the phase difference changing driver such that the second rotor is relatively rotated in the forward direction and the reverse direction alternately with respect to the first rotor if a determination result of the cleaning need determiner is affirmative.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a controller for a motor which has tworotors individually producing fields by permanent magnets and whichallows a phase difference between the two rotors to be changed.

2. Description of the Related Art

In a permanent-magnet type motor, there has conventionally been known amotor of a double-rotor structure in which each of two rotors coaxiallydisposed has permanent magnets that produce fields (refer to, forexample, Japanese Patent Application Publication No. 2002-204541(hereinafter referred to as patent document 1)). In this type of motor,the two rotors can be relatively rotated about their axes. The relativerotation allows a phase difference between the two rotors to be changed.Further, changing the phase difference between the two rotors makes itpossible to change the intensity of a resultant field (the magnitude ofa magnetic flux) obtained by combining the fields produced by thepermanent magnets of the rotors.

The motor disclosed in the aforesaid patent document 1 is constructedsuch that the phase difference between the two rotors mechanicallychanges according to the rotational velocity of the motor. Morespecifically, the two rotors are connected through the intermediary of amember that is displaced in the radial direction of the motor whensubjected to a centrifugal force. One of the two rotors is configuredsuch that it can rotate integrally with an output shaft that outputsgenerated torque of the motor to an external source. Further, the otherrotor is configured such that, as the aforesaid member is displaced, theother rotor relatively rotates with respect to the other rotor that canrotate integrally with the output shaft, thereby changing the phasedifference between the two rotors. In this case, the permanent magnetsof the rotors are arranged such that, when the motor is at a halt, themagnetic poles, i.e., the magnetic fluxes, of the permanent magnetsprovided in the two rotors are oriented in the same direction, causing aresultant field of the permanent magnets to provide a highest intensity.As the rotational velocity of the motor increases, the phase differencebetween the two rotors changes due to a centrifugal force and theintensity of the resultant field of the permanent magnets of the tworotors decreases.

As described above, in the motor wherein the intensity of a resultantfield of the permanent magnets of the two rotors can be changed, anexpanded operating range of the motor and higher energy efficiency ofthe motor can be effectively achieved by properly changing the resultantfield.

However, in the motor disclosed in the aforesaid patent document 1, thephase difference between the rotors is simply mechanically changedaccording to the rotational velocity of the output shaft, making itdifficult to accomplish detailed control. Therefore, it has beendifficult to effectively expand the operating range of the motor or toeffectively improve the energy efficiency of the motor.

Hence, the present applicant has made an attempt to actively control thephase difference between the rotors by using, for example, a hydraulicdevice. For instance, a hydraulic chamber whose volume changes as asecond rotor relatively rotates is created beforehand, and the secondrotor is rotated relatively to a first rotor by the pressure ofhydraulic oil charged in the hydraulic chamber.

Using the hydraulic device makes it possible to control the phasedifference between the rotors to a desired phase difference by adjustingthe pressure in the hydraulic chamber. Consequently, the intensity of aresultant field of the two rotors can be controlled to a desiredintensity.

In general, however, the phase difference between the two rotors neednot be frequently changed, and it is maintained to be constant in manycases. For this reason, sludge tends to build up in the hydraulicchamber. Such accumulated sludge may cause a failure of the mechanismfor changing the phase difference between the rotors. An example of thefailure is unsmooth rotation of the other rotor of the two rotorsrelative to the rotor that can be integrally rotated with the outputshaft. Hence, there has been a demand for measures for removing thesludge, as necessary.

SUMMARY OF THE INVENTION

The present invention has been made with a view of the backgrounddescribed above, and it is an object of the invention to provide acontroller for a motor that makes it possible to cleaning, as necessary,a hydraulic chamber that produces a hydraulic pressure to change a phasedifference between two rotors, thereby restraining sludge fromaccumulating in the hydraulic chamber. Another object of the presentinvention is to provide a controller for a motor that makes it possibleto perform a required operation of the motor while carrying out thecleaning.

To this end, according to the present invention, there is provided acontroller for a motor having a first rotor and a second rotor thatproduce fields by permanent magnets, and an output shaft that can beintegrally rotated with the first rotor of the two rotors, wherein thetwo rotors and the output shaft are coaxially provided, the second rotoris provided such that the second rotor can be rotated relatively to thefirst rotor, and the phase difference between the two rotors is changedby the relative rotation of the second rotor so as to change theintensity of a resultant field obtained by combining the fields of thepermanent magnets of the rotors, the controller for a motor including: aphase difference changing driver which has a hydraulic chamber whosevolume changes as the second rotor relatively rotates, and causes thesecond rotor to rotate relatively to the first rotor by a pressure ofhydraulic oil charged in the hydraulic chamber, a cleaning needdeterminer which determines whether the hydraulic chamber needs to becleaned, and a cleaning phase difference controller which controls thephase difference changing driver such that the second rotor relativelyrotates in the forward direction and the reverse direction alternatelywith respect to the first rotor in the case where the cleaning needdeterminer determines that cleaning is necessary (a first aspect ofinvention).

According to the first aspect of the invention, the phase differencechanging driver is provided, so that the phase difference between thetwo rotors can be controlled to a desired phase difference through theintermediary of the phase difference changing driver. Further, if thecleaning need determiner determines that the hydraulic chamber needs tobe cleaned, then the cleaning phase difference controller controls thephase difference changing driver to relatively rotate the second rotorin the forward direction and the reverse direction alternately withrespect to the first rotor (hereinafter, the relative rotationaloperation of the second rotor may be referred to as “the forward/reversealternate rotation”). At this time, the forward/reverse alternaterotation of the second rotor alternately supplies the hydraulic oil tothe hydraulic chamber and discharges the hydraulic oil from thehydraulic chamber, thus expanding and contracting the volume of thehydraulic chamber. This allows sludge in the hydraulic chamber to flowout of the hydraulic chamber, thereby restraining the sludge frombuilding up in the hydraulic chamber.

In the aforesaid first aspect of the invention, controlling the phasedifference changing driver by the cleaning phase difference controller,that is, the alternate forward/reverse rotation of the second rotorcauses the intensity of the resultant field of the permanent magnets ofthe two rotors to vary in a vibrating manner. It is desirable,therefore, to carry out the alternate forward/reverse rotation of thesecond rotor for cleaning the hydraulic chamber such that the varyingintensity of the resultant field does not affect an operating conditionof generated torque or the like of the motor.

In this case, for example, the cleaning phase difference controllerincludes a first operating condition determiner that determines, in thecase where the cleaning need determiner determines that cleaning isnecessary, whether an operating condition of the motor is equivalent toan operating condition in the case where it is assumed that theenergization of an armature of the motor has been cut off, wherein inthe case where a determination result given by the first operatingcondition determiner is affirmative, then the cleaning phase differencecontroller controls the phase difference changing driver so as torelatively rotate the second rotor in the forward direction and thereverse direction alternately with respect to the first rotor whilecontrolling an energizing circuit of the armature to cut off theenergization of the armature of the motor (a second aspect of theinvention).

According to the second aspect of the invention, when the hydraulicchamber needs to be cleaned, if the operating condition of the motor isequivalent to the operating condition in the case where it is assumedthat the energization of the armature of the motor has been cut off,then the energization of the armature of the motor is cut off whilecarrying out the alternate forward/reverse rotation of the second rotor.In this case, in the state wherein the energization has been cut off,fluctuations in the resultant field attributable to the alternateforward/reverse rotation of the second rotor do not affect the operatingcondition of the motor. Thus, the hydraulic chamber can be cleaned bycarrying out the alternate forward/reverse rotation of the second rotorwhile substantially maintaining the motor in a proper operatingcondition.

In the second aspect of the invention, if, for example, an invertercircuit is used as the energizing circuit, then the energization of thearmature is cut off by turning off all gate elements, namely, switchingelements, of the inverter circuit.

The operating condition equivalent to the operating condition in whichthe energization of the armature of the motor has been cut off refers toan operating condition in which a required torque of the motor is zeroand the rotational velocity of the output shaft of the motor is a lowvelocity of a predetermined value or less.

Further, for example, the cleaning phase difference controller includesa second operating condition determiner that determines, in the casewhere the cleaning need determiner determines that cleaning isnecessary, whether an operating condition of the motor is equivalent toan operating condition in the case where it is assumed that an armatureof the motor has been short-circuited, wherein in the case where adetermination result given by the second operating condition determineris affirmative, then the cleaning phase difference controller controlsthe phase difference changing driver so as to relatively rotate thesecond rotor in the forward direction and the reverse directionalternately with respect to the first rotor while controlling theenergizing circuit of the armature to short-circuit the armature of themotor (a third aspect of the invention).

According to the third aspect of the invention, when the hydraulicchamber needs to be cleaned, if the operating condition of the motor isequivalent to the operating condition in which it is assumed that thearmature of the motor has been short-circuited, then the armature of themotor is short-circuited while carrying out the alternateforward/reverse rotation of the second rotor. Short-circuiting thearmatures means to short-circuit a pair of terminals, to which voltagesare applied, of a winding of the armature (or a winding of each phasefor an armature of a plurality of phases). In this case, in the statewherein the armature has been short-circuited, fluctuations in theresultant field attributable to the alternate forward/reverse rotationof the second rotor do not affect the operating condition of the motor.Thus, the hydraulic chamber can be cleaned by carrying out the alternateforward/reverse rotation of the second rotor while substantiallymaintaining the motor in a proper operating condition.

In the third aspect of the invention, if, for example, an invertercircuit is used as the energizing circuit, then the energization of thearmature is cut off by turning on all gate elements, namely, switchingelements, of at least one of an upper arm and a lower arm of theinverter circuit.

The operation condition equivalent to the operating condition wherein itis assumed that the armature of the motor has been short-circuitedrefers to an operating condition in which a required torque of the motoris a predetermined regenerative torque (preferably an operatingcondition in a high-velocity range in which a rotational velocity of theoutput shaft of the motor is a predetermined value or more).

Supplementally, the third aspect of the invention may be combined withthe second aspect of the invention.

Further, the controller for a motor may include an energizationcontroller that estimates or detects a phase difference between the tworotors or a value of a characteristic parameter of the motor that has apredetermined correlation with the phase difference and controlsenergizing current to an armature of the motor, by using the phasedifference or the value of the characteristic parameter that has beenestimated or detected, while at least the cleaning phase differencecontroller is controlling the phase difference changing driver torelatively rotate the second rotor in the forward direction or thereverse direction alternately with respect to the first rotor (a fourthaspect of the invention).

According to the fourth aspect of the invention, while carrying out thealternate forward/reverse rotation of the second rotor to clean thehydraulic chamber, the phase difference between the two rotors or thevalue of a characteristic parameter (e.g., an induced voltage constant)of the motor that has a predetermined correlation with the phasedifference is estimated or detected, and the estimated or detected phasedifference or the value of the characteristic parameter is used tocontrol the energizing current to an armature of the motor. This makesit possible to control the energizing current to the armature of themotor so as to generate a desired torque (a required torque) in themotor while carrying out the alternate forward/reverse rotation of thesecond rotor.

The fourth aspect of the invention may be combined with the secondaspect of the invention and/or the third aspect of the invention. Inthat case, if, for example, a determination result in the firstoperating condition determiner in the second aspect of the invention isnegative or if a determination result in the second operating conditiondeterminer in the third aspect of the invention is negative, or if thedetermination results in both of the operating condition determiners arenegative, then the energizing current to the armature of the motor maybe controlled while carrying out the alternate forward/reverse rotationof the second rotor, as described in the fourth aspect of the invention.

Preferably, in the first to the fourth aspects of the inventiondescribed above, the cleaning need determiner determines whether thehydraulic chamber needs to be cleaned on the basis of at least one ofthe rotational velocity of the output shaft of the motor and theoperating time of the motor (a fifth aspect of the invention).

More specifically, the amount of accumulated sludge in the hydraulicchamber tends to be dependant on the rotational velocity of the outputshaft of the motor or the operating time of the motor, so that the needfor cleaning the hydraulic chamber can be accurately determined on thebasis of at least one of the rotational velocity and the operating time.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a sectional view of an essential section of a motor in anembodiment of the present invention;

FIG. 2 is a diagram showing the motor in the axial direction of themotor, a drive plate of the motor shown in FIG. 1 having been removed;

FIG. 3( a) is a diagram showing a phase relationship between an innerrotor and an outer rotor of the motor in a maximum field state, and FIG.3( b) is a diagram showing a phase relationship between the inner rotorand the outer rotor of the motor in a minimum field state;

FIG. 4 is a graph showing induced voltages in an armature of the motorin the maximum field state and in the minimum field state;

FIG. 5 is a block diagram showing a functional construction of acontroller for the motor shown in FIG. 1;

FIG. 6 is a diagram showing a relationship between current and voltagein a d-q coordinate system of the motor shown in FIG. 1;

FIG. 7 is a graph showing a relationship between phase differencebetween the two rotors and induced voltage constant of the motor shownin FIG. 1;

FIG. 8 is a graph showing a relationship between generated torque of anoutput shaft and inductance of a d-axis armature of the motor shown inFIG. 1;

FIG. 9 is a flowchart illustrating the processing by a cleaning controlunit provided in the controller showing in FIG. 5; and

FIG. 10 is a graph for explaining the processing in STEP 3 of theflowchart shown in FIG. 9.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

An embodiment of the present invention will be explained with referenceto FIG. 1 to FIG. 10. FIG. 1 is a sectional view of an essential sectionof a motor in the present embodiment, and FIG. 2 is a diagram showingthe motor in the axial direction of the motor, a drive plate 19 of themotor shown in FIG. 1 having been removed.

Referring to FIG. 1, a motor 1 is a DC brushless motor having adouble-rotor structure and equipped with an output shaft 2, an outerrotor 3, and an inner rotor 4, which are coaxially disposed. The outerrotor 3 and the inner rotor 4 correspond to a first rotor and a secondrotor in the present invention. On the outer side of the outer rotor 3,there is a stator 5 secured to a housing (not shown) of the motor 1, andan armature for three phases (not shown) is attached to the stator 5.The motor 1 is mounted in a vehicle as a traveling motive power sourceof, for example, a hybrid vehicle or an electric car, and capable ofoperating as a motor to perform power running and also operating as agenerator to perform regenerative operation.

The outer rotor 3, which has an annular shape, is provided with aplurality of permanent magnets 6 disposed in the circumferentialdirection thereof substantially at equal intervals. Each of thepermanent magnets 6, which is formed like a long square-shaped plate, isburied in the outer rotor 3 such that the lengthwise direction thereofis set in the axial direction of the outer rotor 3 and the normaldirection thereof is set in the radial direction of the outer rotor 3.Further, the outer rotor 3 has a plurality of tapped holes 7 having axesthat are parallel to the axis of the outer rotor 3. These tapped holes 7are disposed in the circumferential direction of the outer rotor 3 atequal intervals.

The inner rotor 4 also has an annular shape. The inner rotor 4 isdisposed inside the outer rotor 3 such that it is coaxial with the outerrotor 3, the outer peripheral surface of the inner rotor 4 being inslidable contact with the inner peripheral surface of the outer rotor 3.A small clearance may be provided between the outer peripheral surfaceof the inner rotor 4 and the inner peripheral surface of the outer rotor3. Further, the output shaft 2 penetrates the axial portion of the innerrotor 4 such that it is coaxial with the inner rotor 4 and the outerrotor 3. In this case, the inside diameter of the inner rotor 4 islarger than the outside diameter of the output shaft 2, so that aclearance is provided between the outer peripheral surface of the outputshaft 2 and the inner peripheral surface of the inner rotor 4.

The inner rotor 4 has a plurality of permanent magnets 8 disposed in thecircumferential direction substantially at equal intervals. Each of thepermanent magnets 8 has the same shape as that of each of the permanentmagnets 6 of the outer rotor 3, and the permanent magnets 8 are buriedin the inner rotor 4 in the same manner as with the outer rotor 3. Thenumber of the permanent magnets 8 of the inner rotor 4 is the same asthat of the permanent magnets 6 of the outer rotor 3.

Referring now to FIG. 2, of the permanent magnets 6 of the outer rotor3, permanent magnets 6 a indicated by blanks and permanent magnets 6 bindicated by stipples have their magnetic poles in the radial directionof the outer rotor 3 oriented in the opposite directions from eachother. For example, the outer surface (adjacent to the outer peripheralsurface of the outer rotor 3) of each of the permanent magnets 6 aprovides the north pole, while the inner surface thereof (adjacent tothe inner peripheral surface of the outer rotor 3) provides the southpole, and the outer, surface of each of the permanent magnets 6 bprovides the south pole, while the inner surface thereof provides thenorth pole. Similarly, of the permanent magnets 8 of the inner rotor 4,permanent magnets 8 a indicated by blanks and permanent magnets 8 bindicated by stipples have their magnetic poles in the radial directionof the inner rotor 4 oriented in the opposite directions from eachother. For example, the outer surface (adjacent to the outer peripheralsurface of the inner rotor 4) of each of the permanent magnets 8 aprovides the north pole, while the inner surface thereof (adjacent tothe inner peripheral surface of the inner rotor 4) provides the southpole, and the outer surface of each of the permanent magnets 8 bprovides the south pole, while the inner surface thereof provides thenorth pole.

According to the present embodiment, in the outer rotor 3, a pair ofadjacent permanent magnets 6 a, 6 a and a pair of adjacent permanentmagnets 6 b, 6 b are disposed alternately in the circumferentialdirection of the outer rotor 3, as shown in FIG. 2. Similarly, in theinner rotor 4, a pair of adjacent permanent magnets 8 a, 8 a and a pairof adjacent permanent magnets 8 b, 8 b are disposed alternately in thecircumferential direction of the inner rotor 4.

A first member 9 and a second member 10 are provided between the innerside of the inner rotor 4 and the outer peripheral surface of the outputshaft 2. The first member 9 and the second member 10 form a plurality ofhydraulic chambers 24 and 25 on the inner side of the inner rotor 4.

The second member 10 has an annular portion 11 and a plurality ofprojections 12 protrusively provided in the radial direction toward thecenter of the annular portion 11 from the inner peripheral surface ofthe annular portion 11 (hereinafter referred to as “the second memberprojections 12” in some cases). The second member 10 is fixed coaxiallywith the inner rotor 4 by coaxially inserting the annular portion 11into the inner rotor 4. The projections 12 adjacent to the second memberare provided in the circumferential direction at equal intervals.

The first member 9, which is shaped like a vane rotor, has an annularportion 13 serving as a shaft portion thereof and a plurality ofprojections 14 (hereinafter referred to as “the first member projections14” in some cases) protrusively provided in the radial direction fromthe outer peripheral surface of the annular portion 13. The annularportion 13 of the first member 9 is provided coaxially with the annularportion 11 on the inner side of the annular portion 11 of the secondmember 10. The distal ends of the projections 12 of the second member 10are placed in slidable contact with the outer peripheral surface of theannular portion 13 through the intermediary of a sealing member 15.Further, the annular portion 13 of the first member 9 is externallyinserted in the output shaft 2, and the inner peripheral surface thereofis fitted in a spline 16 formed on the outer peripheral surface of theoutput shaft 2. The spline fitting allows the first member 9 to rotateintegrally with the output shaft 2.

The number of the first member projections 14 is the same as the numberof the second member projections 12, the projections 14 being disposedin the circumferential direction at equal intervals. In this case, eachof the first member projections 14 is sandwiched between two secondmember projections 12, 12 adjoining in the circumferential direction. Inother words, the first member 9 and the second member 10 engage witheach other such that the projections 14 and 12 are alternately arrangedin the circumferential direction. The distal ends of the first memberprojections 14 are in slidable contact with the inner peripheral surfaceof the annular portion 11 of the second member 10 through theintermediary of a sealing member 17. Further, each of the first memberprojections 14 is provided with a tapped hole 18 having an axis parallelto the axis of the annular portion 13.

Referring to FIG. 1, disc-shaped drive plates 19, 19 are attached toboth end surfaces of the outer rotor 3 in the axial direction such thatthey are coaxial with the outer rotor 3. Each of the drive plates 19 and19 has a hole 20 which is larger than the outside diameter of the outputshaft 2 at the center (axis) thereof. The output shaft 2 coaxiallypenetrates the hole 20, and each end of the annular portion 13 of thefirst member 9 is fitted in the hole 20. The drive plates 19 arefastened with bolts 21 into the tapped holes 7 of the outer rotor 3 andthe tapped holes 18 of the projections 14 of the first member 9. Thus,the outer rotor 3 and the first member 9 are connected such that theycan integrally rotate. In this case, as described above, the firstmember 9 can rotate integrally with the output shaft 2 by the splinefitting, so that the outer rotor 3 can also integrally rotate with theoutput shaft 2.

The drive plates 19 and 19 support the inner rotor 4 and the secondmember 10 therebetween. Specifically, the surfaces of the drive plates19 and 19 that oppose each other have annular grooves 22, which arecoaxially formed. Each end of the annular portion 11 of the secondmember 10 is slidably inserted in the annular groove 22. Thus, the innerrotor 4 and the second member 10 are supported by the drive plates 19and 19 through the intermediary of the annular portion 11 and can berelatively rotated with respect to the outer rotor 3, the first member9, and the output shaft 2 along the annular grooves 22 of the driveplates 19 and 19.

The first member 9 and the second member 10 are constituent elements ofthe phase difference changing driver 23 that causes the inner rotor 4 torelatively rotate with respect to the outer rotor 3 thereby to changethe phase difference between the two rotors 3 and 4. This phasedifference changing driver 23 has a plurality of pairs (the same numberof pairs as that of the projections 12 and 14) of hydraulic chambers 24and 25, which are formed as shown in FIG. 2, in the space formed by thefirst member 9 and the second member 10 by being surrounded by theannular portion 13 of the first member 9, the annular portion 11 of thesecond member 10, and the drive plates 19 and 19. More detailedly, ofthe space between the annular portion 11 of the second member 10 and theannular portion 13 of the first member 9, the spaces between each of thesecond member projection 12 and the two first member projections 14 and14 that exist on both sides of the projection 12 (on both sides in thecircumferential direction) provide hydraulic chambers 24 and 25 into andout from which hydraulic oil flows. In this case, the hydraulic chamber24 on one side of the second member projection 12 is in communicationwith an oil passage 26 provided inside the output shaft 2 through an oilpassage (not shown) formed in the annular portion 13 of the first member9, the hydraulic chamber 24 being filled with hydraulic oil. Similarly,the hydraulic chamber 25 on the other side of the second memberprojection 12 is in communication with an oil passage 27 providedseparately from the oil passage 26 inside the output shaft 2 through anoil passage (not shown) formed in the annular portion 13 of the firstmember 9, the hydraulic chamber 25 being filled with hydraulic oil. Inthis case, if the hydraulic pressure in the hydraulic chamber 24 isincreased, then the hydraulic pressure turns into a pressure that urgesthe inner rotor 4 to relatively rotate clockwise in FIG. 2 with respectto the outer rotor 3. If the pressure or hydraulic pressure in thehydraulic chamber 25 is increased, then the hydraulic pressure turnsinto a pressure that urges the inner rotor 4 to relatively rotatecounterclockwise in FIG. 2 with respect to the outer rotor 3. One of theclockwise direction and the counterclockwise direction means thedirection of forward rotation of the inner rotor 4, while the othermeans the direction of reverse rotation.

Further, as shown in FIG. 1, the phase difference changing driver 23 isprovided with a hydraulic source unit 30 connected to the oil passages26 and 27 of the output shaft 2 outside the motor 1. The hydraulicsource unit 30 controls the supply of hydraulic oil to the hydraulicchambers 24 and 25 thereby to increase or decrease the pressures in thehydraulic chambers 24 and 25. In this case, a pressure differencebetween the hydraulic chambers 24 and 25 generates a torque that urgesthe inner rotor 4 to rotate together with the second member 10 withrespect to the outer rotor 3 and the first member 9. More specifically,a pressure difference produced by increasing the pressure in thehydraulic chamber 24 to be higher than that in the hydraulic chamber 25generates the torque that urges the inner rotor 4 to rotate clockwise inFIG. 2 with respect to the outer rotor 3. Conversely, a pressuredifference produced by increasing the pressure in the hydraulic chamber25 to be higher than that in the hydraulic chamber 24 generates thetorque that urges the inner rotor 4 to rotate counterclockwise in FIG. 2with respect to the outer rotor 3. Thus, the phase difference changingdriver 23 increases or decreases the pressures in the hydraulic chambers24 and 25 to rotate the inner rotor 4 relative to the outer rotor 3 bymanipulating the pressure differences therebetween, i.e., by changingthe phase difference between the two rotors 3 and 4.

Supplementally, magnetic forces acting between the permanent magnets 8 aand 8 b of the inner rotor 4 and the permanent magnets 6 a and 6 b ofthe outer rotor 3 cause the inner rotor 4 to balance in a state whereinthe permanent magnets 8 a and 8 b and the permanent magnets 6 a and 6 bof the outer rotor 3 oppose each other with opposite poles from eachother, i.e., in a state wherein the permanent magnets 8 a and 8 brespectively face with the permanent magnets 6 a and 6 b, respectively.Hence, if the inner rotor 4 is rotated relative to the outer rotor 3from the balanced state, then a torque that urges the inner rotor 4 toreturn to the balanced state (hereinafter referred to “the magneticforce torque” in some cases) is generated. Hence, to rotate the innerrotor 4 relative to the outer rotor 3 by a pressure difference betweenthe hydraulic chambers 24 and 25, it is necessary to manipulate thepressures in the hydraulic chambers 24 and 25 so as to cause a torqueagainst the magnetic force torque to act on the inner rotor 4 throughthe intermediary of the second member 10. The magnetic force torquechanges according to the phase difference between the inner rotor 4 andthe outer rotor 3 (hereinafter referred to as “the inter-rotor phasedifference θd”).

The above has described the mechanical construction of the motor 1 andthe phase difference changing driver 23.

The present embodiment has been constructed such that the output shaft 2and the outer rotor 3 of the motor 1 integrally rotate. Alternatively,however, the output shaft and the inner rotor may integrally rotate, andthe outer rotor may relatively rotate with respect to the output shaftand the inner rotor. Further, the construction of the phase differencechanging driver is not limited to the one described above. For instance,the inner rotor may be relatively rotated with respect to the outerrotor through the intermediary of a mechanism that converts atranslatory movement of a piston of a translatory cylinder into a rotarymovement. In this case, the inner rotor may be relatively rotated withrespect to the outer rotor through the intermediary of, for example, aplanetary gear mechanism.

The inner rotor 4 is rotated with respect to the outer rotor 3 by thephase difference changing driver 23 to change the inter-rotor phasedifference θd between the two rotors 3 and 4, thereby changing theintensity of the resultant field (the intensity of a radial magneticflux toward the stator 5) obtained by combining the fields generated bythe permanent magnets 8 a and 8 b of the inner rotor 4 and the fieldsgenerated by the permanent magnets 6 a and 6 b of the outer rotor 3.Hereinafter, a state wherein the intensity of the resultant fieldreaches a maximum level will be referred to as the maximum-field state,and a state wherein the intensity of the resultant field reaches aminimum level will be referred to as the minimum-field state. FIG. 3( a)shows a phase relationship between the inner rotor 4 and the outer rotor3 in the maximum-field state, and FIG. 3( b) shows a phase relationshipbetween the inner rotor 4 and the outer rotor 3 in the minimum-fieldstate.

As shown in FIG. 3( a), the maximum-field state is a state wherein thepermanent magnets 8 a and 8 b of the inner rotor 4 and the permanentmagnets 6 a and 6 b of the outer rotor 3 oppose with opposite polesfacing with each other. More detailedly, in this maximum-field state,the permanent magnet 8 a of the inner rotor 4 faces against thepermanent magnet 6 a of the outer rotor 3, while the permanent magnet 8b of the inner rotor 4 faces against the permanent magnet 6 b of theouter rotor 3. In this state, in the radial direction, the direction ofa magnetic flux Q1 of each of the permanent magnets 8 a and 8 b of theinner rotor 4 and the direction of a magnetic flux Q2 of each of thepermanent magnets 6 a and 6 b of the outer rotor 3 are the same, thusproviding a maximum intensity of a resultant magnetic flux Q3 (intensityof a resultant field) of the magnetic fluxes Q1 and Q2. This maximumfield state is the aforesaid balanced state.

Further, as shown in FIG. 3( b), the minimum-field state is a statewherein the permanent magnets 8 a and 8 b of the inner rotor 4 and thepermanent magnets 6 a and 6 b of the outer rotor 3 oppose with the samepoles facing with each other. More detailedly, in this minimum-fieldstate, the permanent magnet 8 a of the inner rotor 4 faces against thepermanent magnet 6 b of the outer rotor 3, while the permanent magnet 8b of the inner rotor 4 faces against the permanent magnet 6 a of theouter rotor 3. In this state, in the radial direction, the direction ofthe magnetic flux Q1 of each of the permanent magnets 8 a and 8 b of theinner rotor 4 and the direction of a magnetic flux Q2 of each of thepermanent magnets 6 a and 6 b of the outer rotor 3 are opposite fromeach other, thus providing a minimum intensity of the resultant magneticflux Q3 (intensity of a resultant field) of the magnetic fluxes Q1 andQ2.

In the present embodiment, the inter-rotor phase difference θd in themaximum-field state is defined as 0[deg] and the inter-rotor phasedifference θd in the minimum-field state is defined as 180[deg]. Theinter-rotor phase difference θd based on the definition is generallydifferent from a mechanical rotational angle difference between theinner rotor 4 and the outer rotor 3.

FIG. 4 shows a graph comparing induced voltages that are induced in anarmature of the stator 5 when the output shaft 2 of the motor 1 isoperated at a predetermined rotational velocity in the maximum-fieldstate and the minimum-field state. In the graph, the axis of ordinatesindicates the induced voltage [V] and the axis of abscissas indicatesthe rotational angle [degrees] of the output shaft 2 in terms ofelectrical angle. The curve marked with a reference characteristic “a”relates to the maximum-field state, which is a state wherein theinter-rotor phase difference θd=180[deg]. The curve marked with areference characteristic “b” relates to the minimum-field state, whichis a state wherein the inter-rotor phase difference θd=180[deg]. As canbe seen from FIG. 4, the level (amplitude level) of the induced voltagecan be changed by switching the inter-rotor phase difference θd between0[deg] and 180[deg]. As the inter-rotor phase difference θd is increasedto 0[deg] and 180[deg], the intensity of the resultant field decreasesand the level of the induced voltage decreases accordingly.

Thus, an induced voltage constant Ke, which is one of the characteristicparameters of the motor 1, can be changed by changing the inter-rotorphase difference θd thereby to increase or decrease the intensity of aresultant field. The induced voltage constant Ke is a proportionalconstant that defines the relationship between angular velocities of theoutput shaft 2 of the motor 1 and induced voltages generated in anarmature on the basis of the angular velocities. The values of theinduced voltage constant Ke decrease as the inter-rotor phase differenceθd is increased from 0[deg] to 180[deg], as will be discussedhereinafter.

Referring now to FIG. 5 to FIG. 10, a controller 50 of the motor 1 inthe present embodiment will be explained. FIG. 5 is a block diagramshowing a functional construction of the controller 50 of the motor 1(hereinafter referred to simply as “the controller 50”). FIGS. 6 to 8are diagrams for explaining the processing by a phase differenceestimator 74 provided in the controller 50, FIG. 9 is a flowchart whichillustrates the processing by a cleaning control unit 55 provided in thecontroller 50, and FIG. 10 is a graph for explaining the processing inSTEP3 of FIG. 9. FIG. 5 schematizes the motor 1 and expresses themechanism constituted of the first member 9 and the second member 10 as“the phase varying mechanism.”

The controller 50 in the present embodiment controls the energization ofthe armature of the motor 1 basically by the so-called d-q vectorcontrol. More specifically, the controller 50 handles the motor 1 byconverting it into an equivalent circuit based on a d-q coordinatesystem, which is a two-phase DC rotary coordinate system in which d-axisindicates the direction of field and q-axis indicates a direction thatis orthogonal to the d-axis. The equivalent circuit has an armature onthe d-axis (hereinafter referred to as “the d-axis armature”) and anarmature on the q-axis (hereinafter referred to as “the q-axisarmature”). The d-q coordinate system is a coordinate system fixedrelative to the output shaft 2 of the motor 1. The controller 50controls the energizing current of an armature (an armature for threephases) of the motor 1 so as to generate a torque based on a torquecommand value Tr_c (a command value of a torque to be generated in theoutput shaft 2 of the motor 1), which is supplied from outside, in theoutput shaft 2. In parallel to the energization control, the controller50 controls the inter-rotor phase difference θd of the motor 1 throughthe intermediary of the phase difference changing driver 23.

To carry out the control, the present embodiment includes, as sensors,current sensors 41 and 42 as current detectors for detecting thecurrents of two phases (e.g., U-phase and W-phase) out of the threephases of an armature of the motor 1, and a resolver 43 as a rotationalposition detecting sensor for detecting a rotational position θm(rotational angle)(=rotational angle of the outer rotor 3) of the outputshaft 2 of the motor 1.

The controller 50 is an electronic unit composed of a CPU, memories, andthe like, and its control processing is sequentially carried out at apredetermined calculation processing cycle. The following willspecifically explain functional means of the controller 50.

The controller 50 includes a rotational velocity calculator 44 whichdetermines a rotational velocity ωm of the output shaft 2 of the motor 1(=rotational velocity of the outer rotor 3) by differentiating therotational position θm detected by the resolver 43, and an energizationcontrol unit 51 which controls the energizing current of the armature ofeach phase of the motor 1 through the intermediary of an invertercircuit 45. The inverter circuit 45, which is not shown since it iswidely known, has an upper arm and a lower arm, each of which isprovided with three switching elements, such as FETs, for three phasesand reflux diodes connected in parallel to the switching elements. Theenergization control unit 51 corresponds to the energization controllingmeans in the present invention, and the inverter circuit 45 correspondsto the energization circuit in the present invention.

The energization control unit 51 includes a bandpass filter 61 whichobtains current detection values Iu and Iw of the U-phase and theW-phase, respectively, of an armature of the motor 1 by removingunwanted components from output signals of the current sensors 41 and42, and a three-phase/dq converter 62 which calculates a detection valueId_s of a current of the d-axis armature (hereinafter referred to as thed-axis current) and a detection value Iq_s of a current of the q-axisarmature (hereinafter referred to as the q-axis current) on the basis ofthe current detection values Iu and Iw and the rotational position θm ofthe output shaft 2 of the motor 1 detected by the resolver 43.

The energization control unit 51 further includes a current commandcalculator 63 which determines a d-axis current command value Id_c,which is a command value of the d-axis current, and a q-axis currentcommand value Iq_c, which is a command value of the q-axis current, anarithmetic unit 64 which determines a corrected d-axis current commandvalue Id_ca obtained by correcting the d-axis current command value Id_cby adding a d-axis current correction value ΔId_vol2 (the valuedetermined at the last calculation processing cycle) determined by aphase difference follow-up determiner 75, which will be discussed later,to the d-axis current command value Id_c, an arithmetic unit 65 whichdetermines a difference ΔId between the corrected d-axis current commandvalue Id_ca and the d-axis current detection value Id_s(=Id_ca−Id_s;hereinafter referred to as “the d-axis current difference ΔId), and anarithmetic unit 66 which determines a difference ΔIq between the q-axiscurrent command value Iq_c and the q-axis current detection valueIq_s(=Iq_c−Iq_s; hereinafter referred to as “the q-axis currentdifference ΔIq). A d-axis current correction value ΔId_vo2 means amanipulated variable of the d-axis current for preventing the magnitudeof a resultant vector of a voltage of the d-axis armature and a voltageof the q-axis armature from exceeding a predetermined supply voltageVdc.

The current command calculator 63 receives a torque command value Tr_c(a command value of a torque to be generated in the output shaft 2 ofthe motor 1) supplied from outside to the controller 50 and an estimatedvalue θd_e (a value determined at the last calculation processing cycle)of the inter-rotor phase difference θd determined by a phase differenceestimator 74, which will be discussed hereinafter. Then, the currentcommand calculator 63 determines the d-axis current command value Id_cand the q-axis current command value Iq_c on the basis of the receivedvalues according to a preset map. The d-axis current command value Id_cand the q-axis current command value Iq_c mean the feedforward values ofthe d-axis current and the q-axis current for generating a torque of thetorque command value Tr_c in the motor 1.

The torque command value Tr_c is determined on the basis of, forexample, the manipulated variable of an accelerator (the amount ofdepression on an accelerator (gas) pedal), or a driving velocity of avehicle, such as a hybrid vehicle or an electric vehicle, provided withthe motor 1 as a traveling motive power source. The torque command valueTr_c comes in the command value of a power running torque and thecommand value of a regenerative torque. In the present embodiment, thetorque command value Tr_c of a power running torque takes a positivevalue, while the torque command value Tr_c of a regenerative torquetakes a negative value.

The energization control unit 51 further includes a d-axis currentcontrol unit 67 which determines a d-axis voltage basic command valueVd_cl (the basic value of a voltage command value of the d-axisarmature) according to a feedback control law, such as a PI law, on thebasis of the d-axis current difference ΔId so as to converge the ΔId tozero, a q-axis current control unit 68 which determines a q-axis voltagebasic command value Vq_cl (the basic value of a voltage command value ofthe q-axis armature) according to a feedback control law, such as a PIlaw, on the basis of the q-axis current difference ΔIq so as to convergethe ΔIq to zero, a noninteracting control unit 69 which determinesnoninteracting components ΔVd, ΔVq (ΔVd: d-axis noninteractingcomponent; ΔVq: q-axis noninteracting component) for canceling theinfluences of speed electromotive forces, which interfere with eachother between the d-axis and the q-axis, on the basis of the correctedd-axis current command value Id_ca and q-axis current command valueIq_c, an arithmetic unit 70 which determines a final d-axis voltagecommand value Vd_c by adding the noninteracting component ΔVd to thed-axis voltage basic command value Vd_cl (by correcting Vd_cl with ΔVd),and an arithmetic unit 71 which determines a final q-axis voltagecommand value Vq_c by adding the noninteracting component ΔVq to theq-axis voltage basic command value Vd_cl (by correcting Vq_cl with ΔVq).

Further, the energization control unit 51 includes an rθ converter 72which converts a vector having the d-axis voltage command value Vd_c andthe q-axis voltage command value Vq_c as its components into a componentof a magnitude V1 and a component of an angle θ1 thereof, and a PWMarithmetic unit 73 which converts the components of the magnitude V1 andthe angle θ1 into a three-phase AC voltage and energizes the armature ofeach phase of the motor through the intermediary of the inverter circuit45 by PWM control on the basis of the three-phase AC voltage. In thiscase, the PWM arithmetic unit 73 energizes the armature of each phase bycontrolling the turning ON/OFF of the switching elements (not shown) ofthe inverter circuit 45. Although not shown in FIG. 5, the PWMarithmetic unit 73 receives the rotational position θm of the outputshaft 2 detected by the resolver 43 in order to convert the aforesaid V1and θ1 into an AC voltage of the armature of each phase of the motor 1.

The PWM arithmetic unit 73 also receives an operation mode command F1,which defines the control modes of the switching elements of theinverter circuit 45, from a cleaning control unit 55 to be discussedlater.

In the present embodiment, the operation mode command F1 comes in ashort-circuit mode command, a gate-off mode command, and a normal modecommand. The short-circuit mode command is a command of an operationmode for turning ON all switching elements of at least one of the upperarm and the lower arm of the inverter circuit 45 to short-circuit thearmatures of the phases of the motor 1. The gate-off mode command is acommand of an operation mode for turning OFF all switching elements ofthe inverter circuit 45 to cut off the energization of the armatures ofthe phases of the motor 1. The normal mode command is a command of a d-qvector control mode for operating the switching elements of the invertercircuit 45 on the basis of a three-phase AC voltage obtained byconverting the aforesaid V1 and θ1 (on the basis of a set of the d-axisvoltage command value Vd_c and the q-axis voltage command value Vq_c).The PWM arithmetic unit 73 controls the turning ON/OFF of the switchingelements of the inverter circuit 45 according to a received operationmode command. In this case, if the short-circuit mode command or thegate-off mode command has been input to the PWM arithmetic unit 73, thenthe turning ON/OFF of the switching elements of the inverter circuit 45will be controlled without depending on the set of the d-axis voltagecommand value Vd_c and the q-axis voltage command value Vq_c.

If the operation mode command F1 is the normal mode command, then theenergizing current of the armature of each phase of the motor 1 will becontrolled such that a torque of the torque command value Tr_c isgenerated in the output shaft 2 of the motor 1 by the processingfunction of the energization control unit 51.

The energization control unit 51 further includes a phase differenceestimator 74 which estimates the inter-rotor phase difference θd of themotor 1 and a phase difference follow-up determiner 75 which determinesthe d-axis current correction value ΔId_vol_2.

According to the present embodiment, the phase difference estimator 74estimates the inter-rotor phase difference θd of the motor 1 as follows.

FIG. 6 is a diagram illustrating the relationship between current andvoltage in the d-q coordinate system, the axis of ordinates indicatingthe q-axis (torque axis) and the axis of abscissas indicating the d-axis(field axis).

In FIG. 6, Ke denotes an induced voltage constant of the motor 1, ωdenotes a rotational velocity (angular velocity) of the output shaft 2of the motor 1, R denotes resistance values of the d-axis armature andthe q-axis armature, Ld denotes an inductance of the d-axis armature, Lqdenotes an inductance of the q-axis armature, Id denotes a d-axiscurrent, Iq denotes a q-axis current, Vd denotes a d-axis voltage, andVq denotes a q-axis voltage. C denotes a voltage circle having thesupply voltage Vdc (target value) of the motor 1 as its radius.

As shown in the figure, the following relational expressions (1) and (2)hold between Vd, Vq and Id, Iq.

Ke·ω+R·Iq=Vq−ω·Ld·Id   (1)

Vd=R·Id−ω·Lq·Iq   (2)

The induced voltage constant Ke of the motor 1 has a notable correlationwith the intensity of a resultant field (the intensity of a magneticflux) of the permanent magnets 6 of the outer rotor 3 and the permanentmagnets 8 of the inner rotor 4. In this case, the intensity of theresultant field depends on the inter-rotor phase difference θd, so thatthe induced voltage constant Ke has a notable correlation with theinter-rotor phase difference θd. In the present embodiment, there is acorrelation, as shown by the graph shown in FIG. 7, between the inducedvoltage constant Ke of the motor 1 and the inter-rotor phase differenceθd. More specifically, as the inter-rotor phase difference θd increasesfrom 0[deg] to 180[deg], i.e., as the intensity of the resultant fielddecreases from a maximum level to a minimum level, the value of theinduced voltage constant Ke monotonously decreases.

In the present embodiment, therefore, the phase difference estimator 74determines the induced voltage constant Ke according to the followingexpression (3) derived from expression (1) given above. Then, from thisinduced voltage constant Ke, an estimated value θd_e of the inter-rotorphase difference θd is determined on the basis of a preset data table,as shown by the graph of FIG. 7.

Ke=(Vq−ω·Ld·Id−R·Iq)/ω  (3)

In this case, the q-axis voltage command value Vq_c calculated by thearithmetic unit 71 and the d-axis current detection value Id_s and theq-axis current detection value Iq_s determined by the three-phase/dqconverter 62 are used as the values of Vq, Id, and Iq required for thecalculation of expression (3). As the value for Ld, a fixed valuedetermined beforehand is used. As the value of R, a value determinedaccording to, for example, the following expression (4) derived fromexpression (2) given above is used.

R=(Vd+ω·Lq·Iq)/Id   (4)

As the values of Vd, Iq, and ω required for the calculation of thisexpression (4), the d-axis voltage command value Vd calculated by thearithmetic unit 70, the q-axis current detection value Iq_s calculatedby the three-phase/dq converter 62, and the rotational velocity ωmcalculated by the rotational velocity calculator 75 may be used.Further, from the torque command value Tr_c, the value of Lq isdetermined on the basis of a data table prepared beforehand, as shown bythe graph of FIG. 8, then the determined value is used for thecalculation of expression (4) in the present embodiment. The graph shownin FIG. 8 illustrates the correlation between the torques generated inthe output shaft 2 of the motor 1 and the values of Lq. As illustrated,a notable correlation exists between the torques generated in the motor1 and Ld. According to the present embodiment, therefore, thecorrelation is used to determine the value of Ld from the torque commandvalue Tr_c, as described above.

When determining the value of R according to expression (4), if thed-axis current Id takes a value in the vicinity of zero, then the valueof R cannot be accurately determined. As a solution thereof, the valueof R may be determined, for example, as follows. In a situation whereinthe d-axis current command value Id_ca calculated by the arithmetic unit64 is maintained at a value in the vicinity of zero, the d-axis currentcommand value is reset such that it periodically switches between apositive value and a negative value in the vicinity of zero and atemporal mean value thereof is maintained in the vicinity of zero. Then,in this state, the value of R is calculated according to the followingexpression (5).

R={(Vd1−Vd2)+ω·Lq·(Iq1−Iq2)}/(Id1−Id2)   (5)

where Vd1, Iq1, and Id1 mean a d-axis voltage, a q-axis current, and ad-axis current, respectively, which are associated with time at whichthe d-axis current command value takes a positive value or a negativevalue (hereinafter referred to as time 1), and Vd2, Iq2, and Id2 mean ad-axis voltage, a q-axis current, and a d-axis current, respectively,which are associated with time at which the d-axis current command valuetakes reverse polarity from the case of Vd1, Iq1, and Id1 (hereinafterreferred to as time 2). For the values, the d-axis voltage command valueVd_c, the q-axis current detection value Iq_s, and the d-axis currentdetection value Id_s at time 1 and time 2 may be used. Further, changesin an actual rotational velocity of the output shaft 2 of the motor 1and an actual inductance of the q-axis armature in one cycle duringwhich the d-axis current command value is changed are regarded to besubstantially zero, and the value of the rotational velocity ωmcalculated by the rotational velocity calculator 44 at time 1 or time 2may be used as the value of ω in expression (5). Further, the valuedetermined from the torque command value Tr_c at time 1 or time 2 on thebasis of the data table shown by the graph of FIG. 8 may be used as thevalue of Lq in expression (5).

Determining the value of R as described above makes it possible toproperly determine the value of R even in the situation wherein thed-axis current Id takes a value in the vicinity of zero.

Supplementally, to estimate the value of the induced voltage constant Keaccording to the above expression (3) the value of R may take a fixedvalue set beforehand. Further, to estimate the inter-rotor phasedifference θd, the value of Lq may be considered in addition to thevalue of Ke so as to enhance the accuracy of the estimation. Forinstance, the estimated value θd_e of the inter-rotor phase differenceθd may be determined on the basis of a preset map from the value of Kedetermined according to expression (3) and the value of Lq determined onthe basis of the data table shown in FIG. 8. The value of R and thevalue of Lq are subject to influences of the temperatures of thearmatures of the motor 1 or the permanent magnets 6 and 8, so that thetemperatures may be detected or estimated thereby to estimate the valuesof R and Lq on the basis of the temperatures. Then, by using theestimated value of R or Lq, the value of Ke or the inter-rotor phasedifference θd may be estimated, as described above.

The processing by the phase difference follow-up determiner 75 will bediscussed in detail hereinafter.

The controller 50 includes, in addition to the rotational velocitycalculator 44 and the energization control unit 51, a field control unit52 which determines a field manipulating current ΔId_vol as themanipulated variable of a field for preventing the magnitude of theresultant vector (resultant voltage) of the d-axis voltage command valueVd_c and the q-axis voltage command value Vq_c from exceeding the supplyvoltage Vdc (target value) of the motor 1 supplied to the controller 50,a phase difference command determiner 53 that determines a first phasedifference command value θd_cl, which is the first command value of theinter-rotor phase difference θd of the motor 1, on the basis of thefield manipulating current ΔId_vol, a cleaning need determiner 54 thatdetermines whether it is necessary to clean the hydraulic chambers 24and 25 of the phase difference changing driver 23, the cleaning controlunit 55 that carries out processing for determining the operation modecommand F1 or determining a second phase difference command value θd_c2,which is a second command value of the inter-rotor phase difference θd,on the basis of a determination result given by the cleaning needdeterminer 54, and a phase difference command selector 56 that selectsone of the first phase difference command value θd_c1 and the secondphase difference command value θd_c2 as a phase difference command valueθd_c, and outputs the selected phase difference command value θd_c tothe hydraulic source unit 30 of the phase difference changing driver 23.The cleaning need determiner 54 corresponds to the cleaning needdetermining means in the present invention, and the cleaning controlunit 55 corresponds to the cleaning phase difference controlling meansin the present invention.

In order to determine the field manipulating current ΔId_vol, the fieldcontrol unit 52 sequentially receives the supply voltage Vdc (targetvalue) of the motor 1 supplied to the controller 50 and the d-axisvoltage command value Vd_c and the q-axis voltage command value Vd_qdetermined in the energization control unit 51. Then, based on thedifference between the magnitude of a resultant vector of the receivedVd_c and Vd_q (=√(Vd_c²+Vd_q²)) and the supply voltage Vdc, the fieldcontrol unit 52 carries out a feedback control law to bring thedifference close to zero, thereby determining the field manipulatingcurrent ΔId_vol. The supply voltage Vdc is set on the basis of mainly adetection value of an output voltage of a storage battery (not shown)serving as the power source of the motor 1.

There are two methods available to make the magnitude of the resultantvector of Vd_c and Vd_q coincide with the supply voltage Vdc, i.e., tomake the resultant vector trace the circumference of the voltage circleshown in FIG. 6. According to one method, the d-axis current is adjustedso as to manipulate the fields between the rotors 3 and 4 and thearmatures in a pseudo manner. According to the other method, theinter-rotor phase difference θd is adjusted to consequently adjust theinduced voltage constant Ke, thereby directly manipulating the resultantfield of the permanent magnets 6 and 8. The field manipulating currentΔId_vol indicates the manipulated variables of the fields in terms ofthe manipulated variables of the d-axis current.

The field control unit 52 may alternatively determine the manipulatedvariable of the inter-rotor phase difference θd or the induced voltageconstant Ke in place of the field manipulating current ΔId_vol.

The field manipulating current ΔID_vol determined by the field controlunit 52 as described above is input to the phase difference commanddeterminer 53. The phase difference command determiner 53 then convertsthe field manipulating current ΔID_vol into a manipulated variable(correction amount) of the inter-rotor phase difference θd that causes afield change equivalent to a field change that would result if thed-axis current were manipulated by the field manipulating currentΔID_vol, and corrects the current first phase difference command valueθd_c11 by using the manipulated variable of the inter-rotor phasedifference θd so as to determine a new first phase difference commandvalue θd_c1. In this case, Id_vol is converted into the manipulatedvariable of the inter-rotor phase difference θd by multiplying Id_vol bya gain set on the basis of, for example, the current first phasedifference command value θd_c1.

In the present embodiment, the cleaning need determiner 54 determinesthe need for cleaning the hydraulic chambers 24 and 25, i.e., removingthe sludge accumulating in the hydraulic chambers 24 and 25, on thebasis of the rotational velocity ωm of the output shaft 2 of the motor 1calculated by the rotational velocity calculator 44. The amount ofsludge building up per unit time in the hydraulic chambers 24 and 25 isapproximately proportional to the square of the rotational velocity ωmof the output shaft 2 of the motor 1. According to the presentembodiment, therefore, the cleaning need determiner 54 cumulatively addsa squared value ωm² (or a value that is proportional to ωm²) of therotational velocity ωm at each calculation processing cycle. When thecumulatively added value Σωm² exceeds a predetermined value setbeforehand, it is determined that the hydraulic chambers 24 and 25 needto be cleaned and supplies the determination result to the cleaningcontrol unit 55.

The cumulatively added value Σωm² is stored and retained in anonvolatile memory, such as an EEPROM, so that it is not lost during ahalt of drive of the vehicle. The cumulatively added value Σωm² isinitialized to zero after completion of the cleaning operation, whichwill be described later.

Supplementally, in the present embodiment, the cumulatively added valueΣωm² has been used to determine the need for cleaning. Alternatively,however, for example, the time for which the output shaft 2 of the motor1 rotates may be measured and when the measured time exceeds apredetermined value, then it may be determined that the cleaning isnecessary. As another alternative, for example, the need for thecleaning may be determined on the basis of both the measured time andthe cumulatively added value Σωm².

The cleaning control unit 55 receives the rotational velocity wmcalculated by the rotational velocity calculator 44, the torque commandvalue Tr_c, and the value of the supply voltage Vdc of the motor 1.Then, the cleaning control unit 55 determines the operating condition ofthe motor 1 on the basis of the received values, determines theoperation mode command F1 accordingly, and outputs the determinedoperation mode command F1 to the PWM arithmetic unit 73 of theenergization control unit 51, the details of which will be discussedlater. The cleaning control unit 55 also determines the second phasedifference command value θd_c2 as the command value of the inter-rotorphase difference θd to clean the hydraulic chambers 24 and 25, andoutputs the second phase difference command value θd_c2 to the phasedifference command selector 56. Moreover, the cleaning control unit 55sets the value of a phase difference command selection flag thatspecifies which of the first phase difference command value θd_c1 andthe second phase difference command value θd_c2 should be selected bythe phase difference command selector 56, and outputs the set value tothe phase difference command selector 56.

In the present embodiment, if the value of the phase difference commandselection flag is 0, then it means that the first phase differencecommand value θd_c1 determined by the phase difference commanddeterminer 53 should be selected, and if the value is 1, then it meansthat the second phase difference command value θd_c2 determined by thecleaning control unit 55 should be selected.

The phase difference command selector 56 selects either the first phasedifference command value θd_c1 or the second phase difference commandvalue θd_c2 on the basis of the value of the phase difference commandselection flag, and outputs the selected value as the phase differencecommand value θd_c to the hydraulic source unit 30 of the phasedifference changing driver 23.

The hydraulic source unit 30 manipulates the hydraulic pressures in thehydraulic chambers 24 and 25 to cause an actual inter-rotor phasedifference θd to follow a received phase difference command value θd_c.In this case, for example, the hydraulic pressures in the hydraulicchambers 24 and 25 (hydraulic pressures that cause a torque generatedbetween the first member 9 and the second member 10 by the difference inhydraulic pressure between the adjoining hydraulic chambers 24 and 25 tobalance out the aforesaid magnetic force torque) are determined from thephase difference command value θd_c on the basis of a preset data table,and the hydraulic pressures of the hydraulic chambers 24 and 25 arecontrolled to the determined hydraulic pressures thereby to make theinter-rotor phase difference θd follow the phase difference commandvalue θd_c.

The processing by the phase difference follow-up determiner 75 of theenergization control unit 51 will now be explained. According to thepresent embodiment, in order to set the magnitude of the resultantvector of the d-axis voltage command value Vd_c and the q-axis voltagecommand value Vq_c to the supply voltage Vdc (target value), basically,the inter-rotor phase difference θd is adjusted thereby to manipulate aresultant field of the permanent magnets 6 and 8. In this case, anactual inter-rotor phase difference θd generally delays in following thephase difference command value θd_c, so that the d-axis current isadjusted if the phase difference command value θd_c and the inter-rotorphase difference θd_e estimated by the phase difference estimator 74 donot agree with each other. In the situation wherein the phase differencecommand value θd_c and the inter-rotor phase difference θd_e estimatedby the phase difference estimator 74 do not agree with each other asdescribed above, the phase difference follow-up determiner 75 determinesthe d-axis current correction value ΔID_vol_2 to adjust the d-axiscurrent.

To carry out the processing, the phase difference follow-up determiner75 sequentially receives the inter-rotor phase difference θd_e estimatedby the phase difference estimator 74, the phase difference command valueθd_c selected by the phase difference command selector 56, and the fieldmanipulating current ΔID_vol determined by the field control unit 52.

The phase difference follow-up determiner 75 sets the value of thed-axis current correction value ΔID_vol2 to zero if the receivedestimated value θd_e of the inter-rotor phase difference θd coincideswith the phase difference command value θd_c, or it directly sets thefield manipulating current ΔID_vol as the d-axis current correctionvalue ΔID_vol2 if the received estimated value θd_e of the inter-rotorphase difference θd does not coincide with the phase difference commandvalue θd_c. The d-axis current correction value ΔID_vol2 set asdescribed above is supplied to the arithmetic unit 64.

Now, the processing by the cleaning control unit 55 and an operation ofcleaning the hydraulic chambers 24 and 25 thereby will be explained withreference to FIG. 9 and FIG. 10.

As shown by the flowchart of FIG. 9, the cleaning control unit 55 firstdetermines whether there is a need for cleaning or removing sludge fromthe hydraulic chambers 24 and 25 (STEP1). In this case, the cleaningcontrol unit 55 determines that there is a need for cleaning if adetermination result given by the cleaning need determiner 54 indicatesthe need for cleaning. If a determination result given by the cleaningneed determiner 54 indicates no need for cleaning, then the cleaningcontrol unit 55 determines that there is no need for cleaning. Theprocessing by the cleaning need determiner 54 may alternatively beperformed by the cleaning control unit 55.

If the determination result in STEP1 is negative, that is, there is noneed for cleaning, then the cleaning control unit 55 sets the operationmode command to the normal mode command in STEP9 and also sets the valueof the phase difference command selection flag to 0 in STEP10. The setoperation mode command is output to the PWM arithmetic unit 73 of theenergization unit 51 and the value of the phase difference commandselection flag is output to the phase difference command selector 56.

Thus, if there is no need for cleaning, then the PWM arithmetic unit 73turns ON/OFF the switching elements of the inverter circuit 45 on thebasis of the d-axis voltage command value Vd_c and the q-axis voltagecommand value Vq_c. This controls the energizing current supplied to thearmatures of the motor 1 to the current based on the torque commandvalue Tc_r (the current that causes the d-axis current and the q-axiscurrent to follow the corrected d-axis current command value Id_ca andthe corrected q-axis current command value Iq_c, respectively) by thed-q vector control. As a result, a torque of the torque command valueTr_c is generated in the output shaft 2 of the motor 1.

The phase difference command selector 56 selects, as the phasedifference command value θd_c, the first phase difference command valueθd_c1 input from the phase difference command determiner 53, and outputsthe selected phase difference command value θd_c to the hydraulic sourceunit 30 of the phase difference changing driver 23. Thus, the hydraulicsource unit 30 manipulates the hydraulic pressures in the hydraulicchambers 24 and 25 such that the actual inter-rotor phase difference θdbecomes the first phase difference command value θd_c1.

At this time, the first phase difference command value θd_c1 ismaintained to be substantially constant, and the d-axis currentcorrection value ΔID_vol2 is maintained at zero by the processingimplemented by the phase difference follow-up determiner 75 in a statewherein the estimated value θd_e of the inter-rotor phase difference θddetermined by the phase difference estimator 74 steadily agrees withθd_c1. If the first phase difference command value θd_c1 changes with aconsequent difference from the estimated value θd_e of the inter-rotorphase difference θd, then the d-axis current correction value ΔID_vol2is set to the field manipulating current ΔID_vol determined by the fieldcontrol unit 52 so as to compensate for an excess or a deficiency of thefield attributable to the difference by the field produced by the d-axiscurrent.

If the determination result in STEP1 is affirmative, that is, if thereis a need for cleaning, then the cleaning control unit 52 determineswhether the motor 1 is in a state wherein the torque command value Tr_cis zero and the product of the rotational velocity ωm of the outputshaft 2 of the motor 1 (ωm calculated by the rotational velocitycalculator 44) and a maximum induced voltage constant Kemax, which is avalue of an induced voltage constant in the maximum field state of themotor 1 (=Kemax·ωm) is smaller than the value obtained by dividing thesupply voltage Vdc by a predetermined value α (=Vdc/α)(STEP2). Thepredetermined value α, which denotes a modulation factor of the motor 1,is √6 in the present embodiment. Whether Kemax·ωm<Vdc/α is equivalent towhether ωm is smaller than a predetermined value (Vdc/(α·Kemax)).

In a situation wherein the determination result in STEP2 is affirmativemeans Tr_c=0, so that the energizing current to each phase of thearmature is being controlled such that the torque generated in theoutput shaft 2 of the motor 1 becomes zero. In this situation, theenergizing current to the armature is maintained to be substantiallyzero. Under this condition, the operation of the motor 1 is not affectedeven if all the switching elements of the inverter circuit 45 are turnedOFF. In other words, the operating state of the motor under thecondition wherein the determination result in STEP2 is affirmative isequivalent to the operating state of the motor 1 in the case where allthe switching elements of the inverter circuit 45 are OFF. In asituation wherein Kemax·ωm≧Vdc/α even if Tr_c=0, if all the switchingelements of the upper arm or the lower arm of the inverter circuit 45,then a current that generates regenerative torque in the motor 1inconveniently flows due to the influences of the reflux diodes of theinverter circuit 45. For this reason, the condition of whetherKemax·ωm<Vdc/α is added in STEP2.

Hence, according to the present embodiment, if the determination resultin STEP2 is affirmative, then the cleaning control unit 55 sets theoperation mode command to the gate-off mode command (STEP4). Further,the cleaning control unit 55 sets the phase difference command selectionflag to 1 in STEP7, then generates the second phase difference commandvalue θd_c2 to repeat increasing and decreasing the inter-rotor phasedifference θd (more specifically, increasing or decreasing theinter-rotor phase difference θd and then decreasing or increasing theinter-rotor phase difference θd) for a predetermined number of times(STEP8). For example, the second phase difference command value θd_c2 isgenerated for a predetermined number of cycles such that it changes in atriangular waveform or a sinusoidal waveform. Repeatedly increasing anddecreasing the inter-rotor phase difference θd is equivalent torepeatedly relatively rotating the inner rotor 4 with respect to theouter rotor 3 in the forward direction and the reverse directionalternately.

In this case, an upper limit value and a lower limit value in increasingand decreasing the inter-rotor phase difference θd may be values setbeforehand (e.g., 180[deg] and 0[deg]), or they may be determined on thebasis of the estimated value θd_e of the inter-rotor phase difference θdimmediately before starting the increasing and decreasing of theinter-rotor phase difference θd. The cycle of the increasing anddecreasing of the inter-rotor phase difference θd may be set to a valuefixed beforehand or it may be determined on the basis of a travelingcondition of a vehicle or the like.

The PWM arithmetic unit 73 of the energization control unit 51 turns OFFall the switching elements of the inverter circuit 45 by the processingin STEPs 4, 7, and 8 explained above. This cuts off the energizingcurrent to the armatures of the motor 1, thus maintaining the torquegenerated in the output shaft 2 at zero, which is equivalent to thetorque command value Tr_c.

Further, setting the value of the phase difference command selectionflag to 1 causes the phase difference command selector 56 to select, asthe phase difference command value θd_c, the second phase differencecommand value θd_c2 generated as described above by the cleaning controlunit 55 and to output the selected second phase difference command valueθd_c2 to the hydraulic source unit 30. Then, the hydraulic source unit30 controls the hydraulic pressures in the hydraulic chambers 24 and 25such that the actual inter-rotor phase difference θd is repeatedlyincreased/decreased for a predetermined number of times on the basis ofthe second phase difference command value θd_c2. Thus, the volumes ofthe hydraulic chambers 24 and 25 are repeatedly increased/decreased,causing a hydraulic oil to flow between the hydraulic chambers 24 and 25and the exterior thereof. This moves the sludge accumulated in thehydraulic chambers 24 and 25 out from the hydraulic chambers 24 and 25,solving the problem of the accumulation of the sludge. In this case, allthe switching elements of the inverter circuit 45 are turned OFF, sothat the energizing current to the armatures of the motor 1 is notaffected by the increasing and decreasing of the inter-rotor phasedifference θd (the increasing and decreasing of a resultant field),making it possible to stably maintain the torque generated in the outputshaft 2 of the motor 1 at zero.

After repeatedly increasing and decreasing the inter-rotor phasedifference θd for a predetermined number of times as described above,the cleaning control unit 55 sets the operation mode command back to thenormal mode command in STEP9, and further resets the value of the phasedifference command selection flag to zero in STEP10. This finishes thecleaning operation of the hydraulic chambers 24 and 25.

Supplementally, the determination processing in STEP2 described abovecorresponds to the first operation state determining means in thepresent invention.

If the determination result in STEP2 is negative, then the cleaningcontrol unit 55 determines whether the motor 1 is in an operation statewherein the torque command value Tr_c is substantially equal to apredetermined value TRQ1, which is determined as described later, (theabsolute value of a difference between Tr_c and TRQ1 is a predeterminedvalue or less in the vicinity of zero), and the rotational velocity ωmof the output shaft 2 of the motor 1 is a predetermined value ωmx ormore (STEP3).

The aforesaid predetermined value TRQ1 related to torque means the valueof torque generated in the output shaft 2 of the motor 1 with all theswitching elements of either the upper arm or the lower arm or both armsof the inverter circuit 45 turned ON and the armature of each phase ofthe motor 1 short-circuited. Hereinafter, the predetermined value TRQ1will be referred to as the short-circuit torque value TRQ1.

The short-circuit torque value TRQ1 is generally given by the followingexpression (6).

$\begin{matrix}{{{TRQ}\; 1} = {3 \cdot \frac{{{- R} \cdot \omega}\; {e \cdot K}\; e}{R^{2} + {\omega \; {e^{2} \cdot {Ld} \cdot {Lq}}}} \cdot \left\lbrack {{Ke} + {\left( {{Ld} - {Lq}} \right) \cdot \left( \frac{{{- {Lq}} \cdot \omega}\; {e^{2} \cdot {Ke}}}{R^{2} + {\omega \; {e^{2} \cdot {Ld} \cdot {Lq}}}} \right)}} \right\rbrack}} & (6)\end{matrix}$

ωe on the right side of expression (6) denotes an electrical angularvelocity of the output shaft 2 of the motor 1, and it takes a value thatis proportional to a rotational velocity ωm calculated by the rotationalvelocity calculator 44 (a value obtained by multiplying ωm by the numberof pairs of poles of the rotors 3 and 4). The meanings of othervariables R, Ld, and Lq of the right side of expression (6) are as havebeen explained with respect to the processing of the phase differenceestimator 74.

FIG. 10 is a graph showing the relationship between a short-circuittorque value TRQ1 given by the expression (6) and the rotationalvelocity ωm. As illustrated, the short-circuit torque value TRQ1 takes anegative torque, that is, a regenerative torque, and the value thereofbecomes an approximately constant value when the rotational velocity ωmreaches a predetermined value ωmx or more (proportional to ωm or areciprocal of ωe, to be more accurate).

In the present embodiment, the short-circuit torque value TRQ1 to becompared with the torque command value Tr_c in STEP3 is determinedaccording to the above expression (6). In this case, as the values of Ldand Lq required for the calculation of the right side of expression (6),the values which are used, for example, in the processing by the phasedifference estimator 74 at the time when the determination result inSTEP1 turns to YES may be directly used as they are. As the values of Rand Ke, the values estimated in the processing by the phase differenceestimator 74 at the time when the determination result in STEP1 turns toYES may be used. If, however, the rotational velocity ωm is in ahigh-velocity range of the predetermined value ωmx or more, a change inthe short-circuit torque value TQR1 in response to changes in Ld, Lq, R,and Ke is sufficiently small. Therefore, preset fixed values may be usedas the values of Ld, Lq, R, and Ke in the calculation of expression (6).

Supplementally, the relationship between the short-circuit torque valueTRQ1 and the rotational velocity ωm when the rotational velocity ωm isthe predetermined value ωmx or more may be defined beforehand in theform of a data table, and the short-circuit torque value TRQ1 may bedetermined from the rotational velocity ωm (a value calculated by therotational velocity calculator 44) on the basis of the data table.

In the situation wherein the determination result in STEP3 isaffirmative, the operating condition of the motor 1 is not affected evenif all the switching elements of either the upper arm or the lower armor both of the arms of the inverter circuit 45 are turned ON and thearmature of each phase of the motor 1 is short-circuited. This meansthat the operating condition of the motor 1 in the situation wherein thedetermination result of STEP3 is affirmative is equivalent to theoperating condition of the motor 1 when the armature of each phase ofthe motor 1 is short-circuited.

According to the present embodiment, therefore, if the determinationresult of STEP3 is affirmative, the cleaning control unit 55 sets theoperation mode command to the short-circuit mode command (STEP5).Further, the cleaning control unit 55 sets the phase difference commandselection flag to 1 in STEP7, then generates the second phase differencecommand value θd_c2 such that the inter-rotor phase difference θd isrepeatedly increased/decreased for a predetermined number of times(STEP8). The processing in STEP8 is carried out in the same manner asthat for setting the operation mode command to the gate-off modecommand.

The processing in STEPs 5, 7, and 8 explained above causes the PWMarithmetic unit 73 of the energization control unit 51 to turn on allthe switching elements of the upper arm or the lower arm of the invertercircuit 45. This short-circuits the armature of each phase of the motor1 and the torque generated in the output shaft 2 is maintained at theshort-circuit torque value TRQ1 that is substantially equivalent to thetorque command value Tr_c.

Further, setting the value of the phase difference command selectionflag to 1 causes the phase difference command selector 56 to output thesecond phase difference command value θd_c2 to the hydraulic source unit30 as the phase difference command value θd_c, as in the case where theoperation mode command is set to the gate-off mode command. Then, thehydraulic source unit 30 controls the hydraulic pressures of thehydraulic chambers 24 and 25 such that the actual inter-rotor phasedifference θd is repeatedly increased/decreased for a predeterminednumber of times on the basis of the second phase difference commandvalue θd_c2. Thus, as in the case where the operation mode command isset to the gate-off mode command, the sludge built up in the hydraulicchambers 24 and 25 flows out of the hydraulic chambers 24 and 25,solving the problem of the accumulation of sludge.

In this case, the armature of each phase of the motor 1 isshort-circuited, so that the energizing current of the armatures of themotor 1 is not affected by the increasing and decreasing of theinter-rotor phase difference θd (increasing and decreasing of aresultant field), making it possible to stably maintain the torquegenerated in the output shaft 2 of the motor 1 at the short-circuittorque value TRQ1, which is substantially equal to the torque commandvalue Tr_c.

After repeatedly increasing and decreasing the inter-rotor phasedifference θd for a predetermined number of times as described above,the cleaning control unit 55 sets the operation mode command back to thenormal mode command in STEP9, and resets the value of the phasedifference command selection flag to zero in STEP10. This completes theoperation of cleaning the hydraulic chambers 24 and 25.

Supplementally, the determination processing in STEP3 described abovecorresponds to the second operation state determining means in thepresent invention.

If the determination result in STEP3 is negative, then the cleaningcontrol unit 55 sets the operation mode command to the normal modecommand (STEP6). Further, the cleaning control unit 55 sets the phasedifference command selection flag to 1 in STEP7 and then generates thesecond phase difference command value θd_c2 such that the inter-rotorphase difference θd is repeatedly increased/decreased for apredetermined number of times (STEP8). The processing in STEP8 iscarried out in the same manner as that for setting the operation modecommand to the gate-off mode command. In this case, however, an upperlimit value and a lower limit value of the second phase differencecommand value θd_c2 in increasing and decreasing the inter-rotor phasedifference θd are set within a range wherein a torque of the torquecommand value Tr_c can be smoothly generated in the output shaft 2 ofthe motor 1. Alternatively, for example, the upper limit value and thelower limit value of the second phase difference command value θd_c2 maybe set to fixed values, and the processing in STEPs 7 and 8 may becarried out only if the torque command value Tr_c lies within the rangeof the values of torques that can be generated in the output shaft 2 ofthe motor 1 within the range of the inter-rotor phase difference θddefined by the upper limit value and the lower limit value.

By the processing in STEPs 6, 7, and 8 explained above, the PWMarithmetic unit 73 of the energization control unit 51 controls theturning ON/OFF of the switching elements of the inverter circuit 45 onthe basis of the d-axis voltage command value Vd_c and the q-axisvoltage command value Vq_c. Thus, the d-axis component and the q-axiscomponent of the energizing current of the armature of each phase of themotor 1 are controlled on the basis of the d-axis current command valueId_c and the q-axis current command value Iq_c, respectively.Consequently, the torque generated in the output shaft 2 of the motor 1is controlled on the basis of the torque command value Tr_c.

Moreover, setting the value of the phase difference command selectionflag to 1 causes the phase difference command selector 56 to output thesecond phase difference command value θd_c2 to the hydraulic source unit30 as the phase difference command value θd_c, as in the case where theoperation mode command is set to the gate-off mode command or theshort-circuit mode command. Then, the hydraulic source unit 30 controlsthe hydraulic pressures of the hydraulic chambers 24 and 25 such thatthe actual inter-rotor phase difference θd is repeatedlyincreased/decreased for a predetermined number of times on the basis ofthe second phase difference command value θd_c2. Thus, as in the casewhere the operation mode command is set to the gate-off mode command,the sludge built up in the hydraulic chambers 24 and 25 flows out of thehydraulic chambers 24 and 25, solving the problem of the accumulation ofsludge.

In this case, the influences of delays in increasing and decreasing theactual inter-rotor phase difference θd relative to increasing anddecreasing the second phase difference command value θd_c2 arecompensated for by the d-axis current correction value ΔID_vol2 (=fieldmanipulating current ΔID_vol), allowing a torque of the torque commandvalue Tr_c to be properly generated in the output shaft 2 of the motor1. Accordingly, a torque of the torque command value Tr_c can beproperly generated in the output shaft 2 of the motor 1 while cleaningthe hydraulic chambers 24 and 25.

After repeatedly increasing and decreasing the inter-rotor phasedifference θd for a predetermined number of times as described above,the cleaning control unit 55 sets the operation mode command to thenormal mode command in STEP9, and also resets the value of the phasedifference command selection flag to zero in STEP10. This completes theoperation of cleaning the hydraulic chambers 24 and 25. This completesthe operation for cleaning the hydraulic chambers 24 and 25.Supplementally, at the end of the cleaning operation, if the operationmode command is the normal mode command, then the processing in STEP9may be omitted.

Thus, according to the present embodiment, if the hydraulic chambers 24and 25 need to be cleaned, then sludge built up in the hydraulicchambers 24 and 25 can be removed by repeatedly increasing anddecreasing the inter-rotor phase difference θd. As a result, anoperation failure of the phase difference changing driver 23 of themotor 1, especially the occurrence of a failure of a relative rotationof the second member 10 with respect to the first member 9, can berestrained. Further, a desired operation of the motor 1 can be continuedwhile cleaning the hydraulic chambers 24 and 25.

In the embodiment explained above, the hydraulic chambers 24 and 25 havebeen cleaned in three different modes, namely, the gate-off mode, theshort-circuit mode, and the normal mode. Alternatively, however, thehydraulic chambers 24 and 25 may be cleaned in only one or two modesthereamong.

Further, in the aforesaid embodiment, the inter-rotor phase differenceθd_e estimated by the phase difference estimator 74 has been used todetermine the d-axis current command value Id_c and the q-axis currentcommand value Iq_c by the current command calculator 53 of theenergization control unit 51. As an alternative, however, an actualinter-rotor phase difference θd may be detected using an appropriatesensor and a detection value thereof may be used in place of theestimated value θd_e. Further alternatively, the induced voltageconstant Ke as a characteristic parameter having a correlation shown inFIG. 7 with the inter-rotor phase difference θd may be used in place ofthe estimated value or the detection value of the inter-rotor phasedifference θd to determine the d-axis current command value Id_c and theq-axis current command value Iq_c by the current command calculator 53.In this case, as a value of the induced voltage constant Ke, a valueestimated as described above by the phase difference estimator 74 or avalue determined according to the data table as shown in FIG. 7 from adetection value of the actual inter-rotor phase difference θd may beused.

1. A controller for a motor having a first rotor and a second rotor thatproduce fields by permanent magnets, and an output shaft that can beintegrally rotated with the first rotor of the two rotors, wherein thetwo rotors and the output shaft are coaxially provided, the second rotoris provided such that the second rotor can be relatively rotated withrespect to the first rotor, and the phase difference between the tworotors is changed by the relative rotation of the second rotor so as tochange the intensity of a resultant field obtained by combining thefields of the permanent magnets of the rotors, the controller for amotor comprising: a phase difference changing driving means which has ahydraulic chamber whose volume changes as the second rotor relativelyrotates and which causes the second rotor to rotate relatively to thefirst rotor by a pressure of hydraulic oil charged in the hydraulicchamber; a cleaning need determining means which determines whether thehydraulic chamber needs to be cleaned; and a cleaning phase differencecontrolling means which controls the phase difference changing drivingmeans such that the second rotor relatively rotates in the forwarddirection and the reverse direction alternately with respect to thefirst rotor in the case where the cleaning need determining meansdetermines that cleaning is necessary.
 2. The controller for a motoraccording to claim 1, wherein the cleaning phase difference controllingmeans comprises a first operating condition determining means thatdetermines, in the case where the cleaning need determining meansdetermines that cleaning is necessary, whether an operating condition ofthe motor is equivalent to an operating condition obtained in the casewhere it is assumed that the energization of an armature of the motorhas been cut off, and in the case where a determination result given bythe first operating condition determining means is affirmative, then thecleaning phase difference controlling means controls the phasedifference changing driving means so as to relatively rotate the secondrotor in the forward direction and the reverse direction alternatelywith respect to the first rotor while controlling an energizing circuitof the armature to cut off the energization of the armature of themotor.
 3. The controller for a motor according to claim 1, wherein thecleaning phase difference controlling means comprises a second operatingcondition determining means that determines, in the case where thecleaning need determining means determines that cleaning is necessary,whether an operating condition of the motor is equivalent to anoperating condition obtained in the case where it is assumed that anarmature of the motor has been short-circuited, and in the case where adetermination result given by the second operating condition determiningmeans is affirmative, then the cleaning phase difference controllingmeans controls the phase difference changing driving means so as torelatively rotate the second rotor in the forward direction and thereverse direction alternately with respect to the first rotor whilecontrolling the energizing circuit of the armature to short-circuit thearmature of the motor.
 4. The controller for a motor according to claim1, further comprising an energization controlling means that estimatesor detects a phase difference between the two rotors or a value of acharacteristic parameter of the motor that has a predeterminedcorrelation with the phase difference and controls energizing current toan armature of the motor, by using the phase difference or the value ofthe characteristic parameter that has been estimated or detected, whileat least the cleaning phase difference controlling means is controllingthe phase difference changing driving means to relatively rotate thesecond rotor in the forward direction or the reverse directionalternately with respect to the first rotor.
 5. The controller for amotor according to claim 1, wherein the cleaning need determining meansdetermines whether the hydraulic chamber needs to be cleaned on thebasis of at least one of the rotational velocity of the output shaft ofthe motor and the operating time of the motor.